package com.rc.saas.mini.model.tenant;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.rc.saas.mini.common.base.BaseModel;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * @Description 
 * @Author  
 * @Date: 2022-04-24
 */

@ApiModel(value=" tenant_acct_setting ", description=" 运营商结算设置 ")
public class TenantAcctSetting extends BaseModel{ 

    @ApiModelProperty(value = "桩群ID")
    private Long elecStationId;
 
    @ApiModelProperty(value = "运营商")
    private String tenantCode;
 
    @ApiModelProperty(value = "当前生效合同ID,关联acct_contract表")
    private Long contractId;
 
    @ApiModelProperty(value = "当前生效结算规则ID,关联acct_rule表")
    private Long acctRuleId;
 
    @ApiModelProperty(value = "结算方式（0：月结；1：半月结；2：日结）")
    private String settlementMethod;
 
    @ApiModelProperty(value = "结算的订单时间,为上一账单日至本月账单日前一天")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date acctDay;
 
    @ApiModelProperty(value = "半月结算日期(如果为空表示一个月结算)")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date halfMonthDay;
 
    @ApiModelProperty(value = "帐单生成时间（次日）")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date runTime;
 
    @ApiModelProperty(value = "创建人")
    private String createdBy;
 
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdTime;
 
    @ApiModelProperty(value = "最后修改人")
    private String lastUpdatedBy;
 
    @ApiModelProperty(value = "最后修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastUpdatedTime;
 
    public Long getElecStationId() {
        return elecStationId;
    }

    public void setElecStationId(Long elecStationId) {
        this.elecStationId = elecStationId;
    }

    public String getTenantCode() {
        return tenantCode;
    }

    public void setTenantCode(String tenantCode) {
        this.tenantCode = tenantCode;
    }

    public Long getContractId() {
        return contractId;
    }

    public void setContractId(Long contractId) {
        this.contractId = contractId;
    }

    public Long getAcctRuleId() {
        return acctRuleId;
    }

    public void setAcctRuleId(Long acctRuleId) {
        this.acctRuleId = acctRuleId;
    }

    public String getSettlementMethod() {
        return settlementMethod;
    }

    public void setSettlementMethod(String settlementMethod) {
        this.settlementMethod = settlementMethod;
    }

    public Date getAcctDay() {
        return acctDay;
    }

    public void setAcctDay(Date acctDay) {
        this.acctDay = acctDay;
    }

    public Date getHalfMonthDay() {
        return halfMonthDay;
    }

    public void setHalfMonthDay(Date halfMonthDay) {
        this.halfMonthDay = halfMonthDay;
    }

    public Date getRunTime() {
        return runTime;
    }

    public void setRunTime(Date runTime) {
        this.runTime = runTime;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public String getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    public void setLastUpdatedBy(String lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    public Date getLastUpdatedTime() {
        return lastUpdatedTime;
    }

    public void setLastUpdatedTime(Date lastUpdatedTime) {
        this.lastUpdatedTime = lastUpdatedTime;
    }

}
